package com.ydd.service;

import com.ydd.dto.*;
import com.ydd.vo.ArticlePageListVO;
import com.ydd.vo.GetUserInfoVO;
import com.ydd.vo.UserArticleVO;

/**
 * @Description TODO
 * @Author itheima
 * @Date 2023-05-02 22:42
 */
public interface UserService {
    /**
     * 我的文章接口
     * @return
     */
    UserArticleVO myArticle(UserArticleRequestDTO userArticleRequestDTO);

    /**
     * 我的收藏/点赞文章
     * @param userDataListDTO
     * @return
     */
    ArticlePageListVO userDataList(UserDataListDTO userDataListDTO);

    /**
     * 登录成功回显数据
     * @return
     */
    GetUserInfoVO getUserInfo();

    /**
     * 新增文章
     * @param editArticleDTO
     */
    void editArticle(EditArticleDTO editArticleDTO);

    /**
     * 修改用户资料
     * @param userUpdateDTO
     */
    void update(UserUpdateDTO userUpdateDTO);

    /**
     * 发布文章
     * @param addArticleDTO
     */
    void addArticle(AddArticleDTO addArticleDTO);

    /**
     * 删除我的文章
     * @param id
     */
    void delArticle(String id);

    /**
     * 点赞/取消点赞和收藏/取消收藏
     * @param userDataHandleDTO
     */
    void userDataHandle(UserDataHandleDTO userDataHandleDTO);
}
